4. Conformità : requisiti e raccomandazioni
In questa sezione si comincia la descrizione particolareggiata di HTML 4.0, a partire dalle convenzioni tra autori, documenti, utenti, ed interpreti HTML.
Le parole chiave "DEVE", "NON DEVE", "OBBLIGATORIO", "DOVRÀ", "NON DOVRÀ", "DOVREBBE", "NON DOVREBBE", "RACCOMANDATO", "POTREBBE", e "OPZIONALE" in questo documento sono da interpretarsi come descritto in RFC2119. Tuttavia, per ragioni di leggibilità , queste parole non appariranno in caratteri tutti maiuscoli in queste Specifiche.
Talvolta gli autori di queste Specifiche raccomandano procedure suggerite per gli autori e gli interpreti HTML. Queste raccomandazioni non sono normative, e la conformità a queste Specifiche non dipende dalla loro attuazione. Queste raccomandazioni contengono le espressioni "Si raccomanda...", "Queste Specifiche raccomandano...", ed altre diciture simili.
4.1 Definizioni
Documento HTML
- Un documento HTML è un documento SGML che soddisfa i requisiti di queste Specifiche.
Autore
- Un autore è una persona o un programma che scrive o genera documenti HTML. Uno strumento di creazione è un caso speciale di autore, ossia, è un programma che genera HTML. Si raccomanda agli autori di scrivere documenti conformi alla DTD rigorosa piuttosto che alle altre DTD definite da queste Specifiche. Si veda la sezione relativa alle informazioni sulla versione per dettagli sulle DTD definite dall'HTML 4.0.
Utente
- Un utente è una persona che interagisce con un interprete HTML per vedere, ascoltare, o comunque utilizzare un documento HTML riprodotto.
Interprete HTML
- Un interprete HTML è un qualunque dispositivo che interpreta documenti HTML. Gli interpreti HTML includono interpreti visuali (in formato solo testo e in formato grafico), interpreti non visuali (audio, Braille), robot di ricerca, server proxy, ecc.
- Un interprete conforme per l'HTML 4.0 è un interprete HTML che osserva le condizioni obbligatorie ("deve") dichiarate in queste Specifiche, inclusi i seguenti punti:
- Un interprete HTML dovrebbe evitare di imporre limiti di lunghezza arbitrari sui letterali dei valori di attributo (si veda la sezione sulle capacità nella dichiarazione SGML). Per informazioni introduttive sugli attributi SGML si consulti la sezione sulle definizioni degli attributi.
- Un interprete HTML deve garantire che la riproduzione del documento non è modificata dalla presenza o dall'assenza dei tag di inizio e dei tag di fine quando la DTD HTML indica che questi sono opzionali. Si veda la sezione sulle definizioni degli elementi per informazioni introduttive sugli elementi SGML.
- Per ragioni di compatibilità con le versioni precedenti, si raccomanda che gli strumenti che interpretano HTML 4.0 continuino a supportare HTML 3.2 (si veda HTML32) e HTML 2.0 (si veda RFC1866).
Condizioni di errore
- Queste Specifiche non definiscono come gli interpreti HTML conformi gestiscono condizioni generali di errore, incluso come gli interpreti HTML si comportano quando incontrano elementi, attributi, valore di attributi, o entità non specificati in questo documento. Tuttavia, per un comportamento di gestione degli errori raccomandato, si consultino le note sui documenti non validi.
Disapprovato
- Un elemento o attributo disapprovato è un elemento o attributo che è stato sorpassato da costrutti più nuovi. Gli elementi disapprovati sono definiti nel manuale di riferimento nelle posizioni appropriate, ma sono segnalati come disapprovati. Gli elementi disapprovati potranno diventare obsoleti in versioni future dell'HTML. Per ragioni di compatibilità con le versioni precedenti, gli interpreti HTML dovrebbero continuare a supportare gli elementi disapprovati. Le definizioni degli elementi e degli attributi indicano chiaramente quali sono disapprovati. Queste Specifiche includono esempi che illustrano come evitare l'uso di elementi disapprovati. Nella maggior parte dei casi questi dipendono dal supporto degli interpreti HTML per i fogli di stile. In generale, gli autori dovrebbero usare fogli di stile per raggiungere effetti stilistici e di formattazione piuttosto che usare gli attributi HTML di presentazione. Gli attributi HTML di presentazione sono stati disapprovati qualora esistano fogli di stile (si veda, ad esempio, CSS1).
Obsoleto
- Un attributo o elemento obsoleto è un attributo o elemento per cui non c'è garanzia di supporto da parte di un interprete HTML. Gli elementi obsoleti non sono più definiti nelle Specifiche, anche se sono elencati per ragioni storiche nella sezione sulle modifiche del manuale di riferimento.
4.2 SGML
L'HTML 4.0 è un'applicazione SGML conforme allo Standard Internazionale ISO 8879 -- Standard Generalized Markup Language SGML (definito in ISO8879).
Gli esempi nel testo sono conformi alla definizione del tipo di documento rigorosa a meno che l'esempio in questione si riferisca ad elementi o attributi definiti solo dalla definizione del tipo di documento transitoria o dalla definizione del tipo di documento organizzata a frame. Per ragioni di brevità , la maggior parte degli esempi in queste Specifiche non cominciano con la dichiarazione del tipo di documento che è obbligatoria all'inizio di ciascun documento HTML.
I frammenti di DTD nella definizione degli elementi sono tratti dalla definizione del tipo di documento rigorosa tranne che per gli elementi che si riferiscono ai frame.
Si rimanda alla sezione relativa alle informazioni sulla versione di HTML per dettagli su quando usare la DTD rigorosa, transitoria o organizzata a frame.
I commenti che compaiono nella DTD HTML 4.0 non hanno valore normativo; sono solo informativi.
Gli interpreti HTML non devono riprodurre le istruzioni di elaborazione SGML (ad esempio, ) o i commenti SGML. Per maggiori informazioni su questa ed altre caratteristiche SGML che possono essere legali in HTML ma non sono ampiamente supportate dagli interpreti HTML, si consulti la sezione sulle caratteristiche SGML con supporto limitato.
4.3 Il tipo di contenuto text/html
I documenti HTML sono trasmessi su Internet come una sequenza di byte accompagnati da informazioni sulla codifica (descritte nella sezione sulle codifiche dei caratteri). Il costrutto della trasmissione, detto entità messaggio, è definito in RFC2045) e in RFC2068. Un'entità messaggio con un tipo di contenuto uguale a "text/html" rappresenta un documento HTML.
Il tipo di contenuto dei documenti HTML è definito come segue:
Nome del tipo di contenuto:
- text
Nome del sottotipo di contenuto:
- html
Parametri obbligatori:
- nessuno
Parametri opzionali:
- charset
Considerazioni sulla codifica:
- è permessa qualunque codifica
Considerazioni sulla sicurezza:
- Si vedano le note sulla sicurezza
Il parametro opzionale "charset" si riferisce alla codifica dei caratteri usata per rappresentare un documento HTML come una sequenza di byte. I valori legali per questo parametro sono definiti nella sezione sulla codifica dei caratteri. Sebbene questo parametro sia opzionale, si raccomanda che esso sia sempre presente.